package negocio.beans.oficinaventa;

import java.io.Serializable;
import java.util.HashSet;
import java.util.Set;


import javax.persistence.*;

@Entity
@Table (name="cliente")
public class Cliente implements Serializable{

	private static final long serialVersionUID = 1L;

	@Id @Column(name = "cuit",nullable=false, length=90)
	private String cuit;
	
	@Column(name = "razonSocial", nullable = false, length=90)
	private String razonSocial;
	
	@Column(name = "fechaAlta", nullable = false, length=90)
	private String fechaAlta;
	
	@Column(name = "direccion", nullable = false, length=90)
	private String direccion;
		
	@OneToMany(mappedBy="cliente")
	private Set<Remito> historialCompras = new HashSet<Remito>();
	
	@OneToMany(mappedBy="cliente")
	private Set<Cotizacion> historialCotizaciones;
	
	@OneToMany(mappedBy="cliente")
	private Set<OrdenDePedido> historialPedidos;
	
	@OneToMany(mappedBy="cliente")
	private Set<Factura> historialFacturasMes;
	
	@ManyToOne
	@JoinColumn(name="idOficinaVenta", referencedColumnName = "IdOficinaVenta")		
	private OficinaVenta oficinasventas;
	
	public String getCuit() {
		return cuit;
	}
	public void setCuit(String cuit) {
		this.cuit = cuit;
	}
	public String getRazonSocial() {
		return razonSocial;
	}
	public void setRazonSocial(String razonSocial) {
		this.razonSocial = razonSocial;
	}
	public String getFechaAlta() {
		return fechaAlta;
	}
	public void setFechaAlta(String fechaAlta) {
		this.fechaAlta = fechaAlta;
	}
	public String getDireccion() {
		return direccion;
	}
	public void setDireccion(String direccion) {
		this.direccion = direccion;
	}

	public Set<Remito> getHistorialCompras() {
		return historialCompras;
	}
	public void setHistorialCompras(Set<Remito> historialCompras) {
		this.historialCompras = historialCompras;
	}
	public Set<Cotizacion> getHistorialCotizaciones() {
		return historialCotizaciones;
	}
	public void setHistorialCotizaciones(Set<Cotizacion> historialCotizaciones) {
		this.historialCotizaciones = historialCotizaciones;
	}
	public Set<OrdenDePedido> getHistorialPedidos() {
		return historialPedidos;
	}
	public void setHistorialPedidos(Set<OrdenDePedido> historialPedidos) {
		this.historialPedidos = historialPedidos;
	}
	public Set<Factura> getHistorialFacturasMes() {
		return historialFacturasMes;
	}
	public void setHistorialFacturasMes(Set<Factura> historialFacturasMes) {
		this.historialFacturasMes = historialFacturasMes;
	}
	public static long getSerialversionuid() {
		return serialVersionUID;
	}
	public void setOficinasventas(OficinaVenta oficinasventas) {
		this.oficinasventas = oficinasventas;
	}
	public OficinaVenta getOficinasventas() {
		return oficinasventas;
	}
	
}
